#!/bin/bash
# 前端项目构建脚本

# 显示彩色输出
GREEN='\033[0;32m'
RED='\033[0;31m'
YELLOW='\033[1;33m'
NC='\033[0m' # No Color

echo -e "${YELLOW}====================================${NC}"
echo -e "${YELLOW}  学法减分题库系统前端构建脚本      ${NC}"
echo -e "${YELLOW}====================================${NC}"

# 检查Node.js版本
NODE_VERSION=$(node -v)
if [ $? -ne 0 ]; then
  echo -e "${RED}错误: Node.js未安装${NC}"
  exit 1
fi
echo -e "${GREEN}Node.js版本: $NODE_VERSION${NC}"

# 检查npm版本
NPM_VERSION=$(npm -v)
echo -e "${GREEN}npm版本: $NPM_VERSION${NC}"

# 清理旧的构建文件
echo -e "${YELLOW}清理旧的构建文件...${NC}"
if [ -d "dist" ]; then
  rm -rf dist
  echo -e "${GREEN}已清理dist目录${NC}"
fi

# 安装依赖
echo -e "${YELLOW}安装项目依赖...${NC}"
npm install

if [ $? -ne 0 ]; then
  echo -e "${RED}依赖安装失败${NC}"
  exit 1
fi
echo -e "${GREEN}依赖安装完成${NC}"

# 构建项目
echo -e "${YELLOW}构建项目...${NC}"
npm run build

if [ $? -ne 0 ]; then
  echo -e "${RED}构建失败${NC}"
  exit 1
fi

# 检查构建结果
if [ ! -d "dist" ]; then
  echo -e "${RED}构建后的dist目录不存在${NC}"
  exit 1
fi

echo -e "${GREEN}构建成功!${NC}"
echo -e "${GREEN}构建文件位于: $(pwd)/dist/${NC}"

# 显示构建文件大小
DIST_SIZE=$(du -sh dist | cut -f1)
echo -e "${GREEN}构建文件大小: $DIST_SIZE${NC}"

echo -e "${YELLOW}====================================${NC}"
echo -e "${GREEN}前端构建完成${NC}"
echo -e "${YELLOW}====================================${NC}"

# 提供下一步部署提示
echo -e "下一步:"
echo -e "1. 将dist目录下的文件部署到Web服务器"
echo -e "2. 配置Nginx或其他Web服务器指向这些静态文件"
echo -e "3. 确保API请求正确代理到后端服务" 